Copyright ã1995 by NeXT Computer, Inc.  All Rights Reserved.

2

Application Kit

Classes

ActionCell

Inherits From:	Cell : Object

Configuring an ActionCell

- setEnabled:(BOOL)flag	Sets whether the ActionCell reacts to mouse events

- setBezeled:(BOOL)flag	Adds or removes the ActionCell's bezel

- setBordered:(BOOL)flag	Adds or removes the ActionCell's border

- setAlignment:(int)mode	Sets the ActionCell's text alignment to mode

- setFloatingPointFormat:(BOOL)autoRange	Sets the ActionCell's floating point format
left:(unsigned int)leftDigits
right:(unsigned int)rightDigits

- setFont:fontObject	Sets the ActionCell's Font to fontObject

- setIcon:(const char *)iconName	Sets the ActionCell's icon to the NXImage named iconName

Manipulating ActionCell Values

- (double)doubleValue	Returns the ActionCell's contents as a double

- (float)floatValue	Returns the ActionCell's contents as a float

- (int)intValue	Returns the ActionCell's contents as an int

- setStringValue:(const char *)aString	Sets the ActionCell's contents to a copy of aString

- setStringValueNoCopy:(char *)aString	Sets the ActionCell's contents to a aString; will free the
shouldFree:(BOOL)flag		string when freed if flag is YES

- (const char *)stringValue	Returns the ActionCell's contents as a string

Displaying

- drawSelf:(const NXRect *)cellFrame	Draws the ActionCell in controlView
inView:controlView

- controlView	Returns the View in which the ActionCell was most recently drawn (usually a Control)

Target and Action

- setAction:(SEL)aSelector	Sets the ActionCell's action method to aSelector

- (SEL)action	Returns the ActionCell's action method

- setTarget:anObject	Sets the ActionCell's target object to anObject

- target	Returns the ActionCell's target object

Assigning a Tag

- setTag:(int)anInt	Sets the ActionCell's tag to anInt

- (int)tag	Returns the ActionCell's tag

Archiving

- read:(NXTypedStream *)stream	Reads the ActionCell from stream

- write:(NXTypedStream *)stream	Writes the ActionCell to stream

Application

Inherits From:	Responder : Object

Initializing the Class Object

+ initialize	Registers defaults for the application

Creating and Freeing Instances

+ new	Returns a new Application object

- free	Deallocates the Application object

Setting Up the Application

+ workspace	Returns the id of WorkspaceManager

- loadNibFile:(const char *)filename	Loads objects built using Interface Builder
owner:anObject

- loadNibFile:(const char *)filename	Loads objects built using Interface Builder
owner:anObject
withNames:(BOOL)flag

- loadNibFile:(const char *)filename	Loads objects built using Interface Builder
owner:anObject
withNames:(BOOL)flag
fromZone:(NXZone *)zone

- loadNibSection:(const char *)name	Loads objects built using Interface Builder
owner:anObject

- loadNibSection:(const char *)name	Loads objects built using Interface Builder
owner:anObject
withNames:(BOOL)flag

- loadNibSection:(const char *)name	Loads objects built using Interface Builder
owner:anObject
withNames:(BOOL)flag
fromHeader:(const struct mach_header *)header

- loadNibSection:(const char *)name	Loads objects built using Interface Builder
owner:anObject
withNames:(BOOL)flag
fromZone:(NXZone *)zone

- loadNibSection:(const char *)name	Loads objects built using Interface Builder
owner:anObject
withNames:(BOOL)flag
fromHeader:(const struct mach_header *)header
fromZone:(NXZone *)zone

- (const char *)appName	Returns the application's name

- setMainMenu:aMenu	Makes aMenu the application's main menu

- mainMenu	Returns the id of the application's main menu

Responding to Notification)

- applicationDidLaunch:appName	Notice that appName launched; your arbitrary return

- applicationDidTerminate:appName	Notice that appName ended; your arbitrary return

- applicationWillLaunch:appName	Notice that appName will launch; your arbitrary return 

Changing the Active Application

- (int)activate:(int)contextNumber	Makes contextNumber the active application

- (int)activateSelf:(BOOL)flag	Makes this the active application

- (int)activeApp	Returns context number of the active application

- becomeActiveApp	Responds to activating the application

- deactivateSelf	Deactivates the application

- (BOOL)isActive	Returns whether this is the active application

- resignActiveApp	Responds to deactivating the application

Running the Event Loop

- run	Starts the main event loop

- stop:sender	Stops the main event loop

- (int)runModalFor:theWindow	Starts a modal event loop for theWindow

- stopModal	Stops the modal event loop

- stopModal:(int)returnCode	Stops the event loop started by runModalFor:

- (void)abortModal	Aborts the event loop started by runModalFor:

- (NXModalSession *)beginModalSession:(NXModalSession *)session
for:theWindow	Sets up a modal session with theWindow

- (int)runModalSession:(NXModalSession *)session
	Runs a modal session

- endModalSession:(NXModalSession *)session	Finishes a modal session

- delayedFree:theObject	Frees theObject after finishing the current event

- (BOOL)isRunning	Returns whether the main event loop is running

- sendEvent:(NXEvent *)theEvent	Dispatches events to other objects

Getting and Peeking at Events

- (NXEvent *)currentEvent	Returns pointer to the current event

- (NXEvent *)getNextEvent:(int)mask	Returns pointer to the next event matching mask

- (NXEvent *)getNextEvent:(int)mask	Returns pointer to the next event matching mask
waitFor:(double)timeout
threshold:(int)level

- (NXEvent *)peekAndGetNextEvent:(int)mask	Returns pointer to the next event matching mask

- (NXEvent *)peekNextEvent:(int)mask	Returns pointer to the next event matching mask
into:(NXEvent *)eventPtr

- (NXEvent *)peekNextEvent:(int)mask	Returns pointer to the next event matching mask
into:(NXEvent *)eventPtr
waitFor:(float)timeout
threshold:(int)level

Journaling

- (BOOL)isJournalable	Returns whether the application can be journaled

- setJournalable:(BOOL)flag	Sets whether the application can be journaled

- masterJournaler	Returns the controlling NXJournaler object

- slaveJournaler	Returns the controlled NXJournaler object

Handling User Actions and Events

- applicationDefined:(NXEvent *)theEvent	Responds to an application-defined event

- hide:sender	Hides all the application's windows

- (BOOL)isHidden	YES if windows are hidden

- (int)unhide	Responds to message to unhide windows

- unhide:sender	Restores hidden windows to the screen

- unhideWithoutActivation:sender	Restores hidden windows without activating their owner

- powerOff:(NXEvent *)theEvent	Responds to a power-off subevent

- (int)powerOffIn:(int)ms andSave:(int)aFlag	Responds to message from Workspace Manager

- rightMouseDown:(NXEvent *)theEvent	Causes main menu to pop up under the mouse

- (int)unmounting:(const char *)fullPath	Responds to message from Workspace Manager
ok:(int *)flag

Sending Action Messages

- (BOOL)sendAction:(SEL)aSelector	Sends an action message to aTarget or up the responder
to:aTarget		chain
from:sender

- (BOOL)tryToPerform:(SEL)aSelector	Attempts to send a message to the application or the
with:anObject		delegate

- calcTargetForAction:(SEL)theAction	Looks up receiver for theAction message

Remote Messaging

- setAppListener:aListener	Makes aListener the application's Listener

- appListener	Returns the Listener for this application

- setAppSpeaker:aSpeaker	Makes aSpeaker the application's Speaker

- appSpeaker	Returns the Speaker for this application

- (const char *)appListenerPortName	Returns name used to register Listener with name server

- (port_t)replyPort	Returns port for synchronous return messages

Managing Windows

- appIcon	Returns the Window with the application's icon

- findWindow:(int)windowNum	Returns Window object corresponding to windowNum

- getWindowNumbers:(int **)list	Gets window numbers for the application's windows
count:(int *)winCount

- keyWindow	Returns the the key window

- mainWindow	Returns the main window

- makeWindowsPerform:(SEL)aSelector	Sends aSelector message to the Windows
inOrder:(BOOL)flag

- setAutoupdate:(BOOL)flag	Sets whether to send Windows update messages

- updateWindows	Sends update message to all on-screen Windows

- windowList	Returns a List of the application's Windows

- miniaturizeAll:	Miniaturizes all the receiver's application windows

- preventWindowOrdering	Suppresses usual window ordering entirely

Managing the Windows Menu

- setWindowsMenu:aMenu	Sets the Windows menu

- windowsMenu	Returns the Windows menu

- arrangeInFront:	Orders all registered Windows to the front

- addWindowsItem:aWindow	Adds a menu item for aWindow
title:(const char *)aString
filename:(BOOL)isFilename

- removeWindowsItem:aWindow	Removes the Window's menu item

- changeWindowsItem:aWindow	Changes the Window's menu item
title:(const char *)aString
filename:(BOOL)isFilename

- updateWindowsItem:aWindow	Updates the Window's menu item

Managing Panels

- showHelpPanel:sender	Shows the application's help panel or default

- orderFrontDataLinkPanel:	Shows the shared instance; creates if need be

Managing the Services menu

- setServicesMenu:aMenu	Sets the Services menu

- servicesMenu	Returns the Services menu

- registerServicesMenuSendTypes:(const char *const *)sendTypes
andReturnTypes:(const char *const *)returnTypes
	Registers pasteboard types the application can send/receive

- validRequestorForSendType:	Indicates whether the Application can send and receive the 
(NXAtom)sendType		specified types
andReturnType:(NXAtom)returnType

Managing Screens

- (const NXScreen *)mainScreen	Returns the main screen

- (const NXScreen *)colorScreen	Returns the best screen for color

- getScreens:(const NXScreen **)list	Gets information about every connected screen
count:(int *)numScreens

- getScreenSize:(NXSize *)theSize	Provides the size of the screen in pixels

Querying the Application

- (DPSContext)context	Returns the Application's DPS context

- focusView	Gets the currently lockFocus'ed View

- (const char *)hostName	Returns machine running the Window Server

Reporting Current Languages

- (const char *const *)systemLanguages	Gets a list of the user's preferred languages

Opening Files

- (int)openFile:(const char *)fullPath	Asks the delegate to open the fullPath file
ok:(int *)flag

- (int)openTempFile:(const char *)fullPath	Asks the delegate to open a temporary file
ok:(int *)flag

- (int)fileOperationCompleted:(int)operation	Notification of completion of NXWorkspaceRequest; arbitrary operation and return

Responding to Devices

-(int)mounted:(const char *)fullPath	Notice that device at fullPath has been mounted; returns 0 (unless overrideen in a subclass)

- unmounted:(const char *)fullPath	Notice that device at fullPath has been unmounted; returns 0 (unless overrideen in a subclass)

Printing

- setPrintInfo:info	Makes info the application's PrintInfo object

- printInfo	Returns the application's PrintInfo object

- runPageLayout:sender	Runs the application's PageLayout panel

Color

- orderFrontColorPanel:sender	Brings up the color panel

- doesImportAlpha	YES if application responds to opacity in imported colors

- setImportAlpha:	Enable/disable response to opacity in imported colors

Terminating the Application

- terminate:sender	Frees the Application object and exits the application

Assigning a Delegate

- setDelegate:anObject	Makes anObject the Application's delegate

- delegate	Returns the Application's delegate

Implemented by the Delegate

- app:sender 	Notice that appName will launch²
applicationWillLaunch:(const char *)appName

- app:sender 	Notice that appName launched²
applicationDidLaunch:(const char *)appName

- appWillInit:sender	Notifies delegate before initializing²

- appDidInit:sender	Notifies delegate before getting first event²

- appDidBecomeActive:sender	Notifies delegate on activating the application

- appDidResignActive:sender	Notifies delegate on deactivating the application

- appDidHide:sender	Notifies delegate application has been hidden

- appDidUnhide:sender	Notifies delegate application has been unhidden

- appWillUpdate:sender	Notifies delegate application's windows will be updated

- appDidUpdate:sender	Notifies delegate on updating the application's windows

- (BOOL)appAcceptsAnotherFile:sender	YES if it's okay to open another file²

- (int)app:sender	Opens filename²
openFile:(const char *)filename
type:(const char *)aType

- (int)app:sender	Opens temporary file filename²
openTempFile:(const char *)filename
type:(const char *)aType

- (NXDataLinkManager *)app:sender 	Open application to run without user interface²
openFileWithoutUI:(const char *)filename 
type:(const char *)aType

- app:sender 	Notice that operation completed; your arbitrary return²
fileOperationCompleted:(int)operation

- app:sender mounted:(const char *)fullPath	Notification that device at fullPath was mounted²

- (int)app:sender	Facilitates unmounting a device²
unmounting:(const char *)fullPath

- app:sender 	Notification that device at fullPath was unmounted²
unmounted:(const char *)fullPath

- appWillTerminate:sender	Notification that application will terminate²

- app:sender	Notification that sender will show panel
willShowHelpPanel:panel

- app:sender	Responds to message from Workspace Manager²
powerOffIn:(int)ms
andSave:(int)aFlag

- powerOff:(NXEvent *)theEvent	Responds to a power-off subevent

- app:sender 	Notification that application terminated²
applicationDidTerminate:(const char *)appName

	²	These methods may be defined in the delegate and/or in a subclass. If a method is implemented both in a subclass and in the delegate, the message is sent to the delegate.

Box

Inherits From:	View : Responder : Object

Initializing and Freeing a Box

- initFrame:(const NXRect *)frameRect	Initializes a new Box object with the given frameRect

- free	Deallocates the Box

Modifying the Border and Title

- setBorderType:(int)aType	Sets the Box's border to aType

- (int)borderType	Returns the Box's border type

- setTitlePosition:(int)aPosition	Sets the position of the title to aPosition

- (int)titlePosition	Returns the position of the title

- setTitle:(const char *)aString	Sets the Box's title to aString

- (const char *)title	Returns the title of the Box

- cell	Returns the Cell used to draw the title

- setFont:fontObj	Sets the Font of the title to fontObj

- font	Returns the Font used to draw the title

Setting and Placing the Content View

- setContentView:aView	Replaces the Box's content view with aView

- contentView	Returns the content view

- setOffsets:(NXCoord)w :(NXCoord)h	Sets the distance between the border and the content view 

- getOffsets:(NXSize *)aSize	Gets the distance between the border and the content view 

Putting Views in the Box

- addSubview:aView	Adds aView as a subview of the content view

- replaceSubview:aView with:anotherView	Replaces aView with anotherView within the content view

Resizing the Box

- setFrameFromContentFrame:(const NXRect *)contentFrame
	Resizes the Box to accommodate contentFrame

- sizeTo:(NXCoord)width :(NXCoord)height	Resizes the Box to width and height

- sizeToFit	Resizes the Box to exactly enclose its subviews

Drawing the Box

- drawSelf:(const NXRect *)rects :(int)rectCount	Draws the Box

Archiving

- awake	Lays out the graphic elements of the Box

- read:(NXTypedStream *)stream	Reads the Box object from the typed stream

- write:(NXTypedStream *)stream	Writes the Box object to the typed stream

Button

Inherits From:	Control : View : Responder : Object

Initializing the Button Factory

+ setCellClass:classId	Sets the subclass of ButtonCell used by Button

Initializing a Button

- init	Initializes a new Button with title ªButtonº

- initFrame:(const NXRect *)frameRect	Initializes a new Button within frameRect

- initFrame:(const NXRect *)frameRect	Initializes a new Button within frameRect,
icon:(const char *)iconName		with the NXImage named iconName as its icon,
tag:(int)anInt		anInt as its tag,
target:anObject		anObject as its target object,
action:(SEL)aSelector		aSelector as its action message,
key:(unsigned short)charCode		a key equivalent of charCode,
enabled:(BOOL)flag		and enabled according to flag

- initFrame:(const NXRect *)frameRect	Initializes a new Button within frameRect,
title:(const char *)aString		with aString as its title,
tag:(int)anInt		anInt as its tag,
target:anObject		anObject as its target object,
action:(SEL)aSelector		aSelector as its action message,
key:(unsigned short)charCode		a key equivalent of charCode,
enabled:(BOOL)flag		and enabled according to flag

Setting the Button Type

- setType:(int)aType	Sets how the Button highlights and shows its state

Setting the State

- setState:(int)value	Sets the Button's state to value (0 or 1)

- (int)state	Returns the Button's current state (0 or 1)

Setting the Repeat Interval

- setPeriodicDelay:(float )delay	Sets repeat parameters for continuous Buttons
andInterval:(float )interval

- getPeriodicDelay:(float *)delay	Gets repeat parameters for continuous Buttons
andInterval:(float *)interval

Setting the Titles

- setTitle:(const char *)aString	Makes aString the Button's title

- setTitleNoCopy:(const char *)aString	Makes aString the Button's title without copying it

- (const char *)title	Returns the Button's title

- setAltTitle:(const char *)aString	Makes aString the Button's alternate title

- (const char *)altTitle	Returns the Button's alternate title

Setting the Icons

- setIcon:(const char *)iconName	Makes the NXImage named iconName the Button's icon

- setIcon:(const char *)iconName	Sets the icon by name, and its position
position:(int)aPosition

- (const char *)icon	Returns the name of the Button's icon

- setAltIcon:(const char *)iconName	Makes the NXImage named iconName the alternate icon

- (const char *)altIcon	Returns the name of the Button's alternate icon

- setImage:image	Makes the NXImage image the Button's icon

- image	Returns the Button's image

- setAltImage:altImage	Makes the NXImage image the alternate icon

- altImage	Returns the Button's alternate image 

- setIconPosition:(int)aPosition	Sets the position of the Button's icon

- (int)iconPosition	Returns the position of the Button's icon

Modifying Graphic Attributes

- setTransparent:(BOOL)flag	Sets whether the Button is transparent

- (BOOL)isTransparent	Returns whether the Button is transparent

- setBordered:(BOOL)flag	Sets whether the Button has a bezeled border

- (BOOL)isBordered	Returns whether the Button has a bezeled border

Displaying

- display	Displays the Button

- highlight:(BOOL)flag	Highlights (or unhighlights) the Button according to flag

Setting the Key Equivalent

- setKeyEquivalent:(unsigned short)charCode	Makes charCode the Button's key equivalent

- (unsigned short)keyEquivalent	Returns the Button's key equivalent

Handling Events and Action Messages

- (BOOL)acceptsFirstMouse	Ensures that the Button accepts first mouse-down

- performClick:sender	Simulates the user clicking the Button

- (BOOL)performKeyEquivalent:(NXEvent *)theEvent
	Simulates a mouse click, if the key is right

Setting the Sound

- setSound:soundObject	Sets the Sound played when the Button is pressed

- sound	Returns the Sound played when the Button is pressed

ButtonCell

Inherits From:	ActionCell : Cell : Object

Initializing, Copying, and Freeing a ButtonCell

- init	Initializes a new ButtonCell with title ªButtonº

- initTextCell:(const char *)aString	Initializes a new ButtonCell with title aString

- initIconCell:(const char *)iconName	Initializes a new ButtonCell with an NXImage named iconName as its icon

- copyFromZone:(NXZone *)zone	Returns a copy of the ButtonCell allocated from zone

- free	Deallocates the ButtonCell

Determining Component Sizes

- calcCellSize:(NXSize *)theSize	Calculates and returns the size of the ButtonCell
inRect:(const NXRect *)aRect

- getDrawRect:(NXRect *)theRect	Returns the rectangle the ButtonCell draws in

- getTitleRect:(NXRect *)theRect	Returns the rectangle the title is drawn in

- getIconRect:(NXRect *)theRect	Returns the rectangle the icon is drawn in

Setting the Titles

- setTitle:(const char *)aString	Makes a copy of aString the ButtonCell's title

- setTitleNoCopy:(const char *)aString	Makes aString the ButtonCell's title without copying it

- (const char *)title	Returns the ButtonCell's title

- setAltTitle:(const char *)aString	Makes a copy of aString the ButtonCell's alternate title

- (const char *)altTitle	Returns the ButtonCell's alternate title

- setFont:fontObject	Sets the Font used to draw the title

Setting the Icons

- setIcon:(const char *)iconName	Makes the NXImage named iconName the ButtonCell's icon

- (const char *)icon	Returns the name of the ButtonCell's icon

- setAltIcon:(const char *)iconName	Makes the NXImage named iconName the ButtonCell's alternate icon

- (const char *)altIcon	Returns the name of the ButtonCell's alternate icon

- setImage:image	Makes the NXImage object image the ButtonCell's icon

- image	Returns the ButtonCell's icon

- setAltImage:altImage	Makes the NXImage object image the alternate icon

- altImage	Returns the ButtonCell's alternate icon

- setIconPosition:(int)aPosition	Sets the position of the ButtonCell's icon to aPosition

- (int)iconPosition	Returns the position of the ButtonCell's icon

Setting the Sound

- setSound:aSound	Sets the Sound played by the ButtonCell on a mouse-down

- sound	Returns the Sound played by the ButtonCell

Setting the State

- setDoubleValue:(double)aDouble	Sets the ButtonCell's state (value) to aDouble

- (double)doubleValue	Returns the ButtonCell's state as a double

- setFloatValue:(float)aFloat	Sets the ButtonCell's state (value) to aFloat

- (float)floatValue	Returns the ButtonCell's state as a float

- setIntValue:(int)anInt	Sets the ButtonCell's state (value) to anInt

- (int)intValue	Returns the ButtonCell's state as an int

- setStringValue:(const char *)aString	Sets the ButtonCell's state (value) to a copy of aString

- setStringValueNoCopy:(const char *)aString	Sets the ButtonCell's state (value)  to aString

- (const char *)stringValue	Returns the ButtonCell's state as a string

Setting the Repeat Interval

- setPeriodicDelay:(float )delay	Sets repeat parameters for continuous ButtonCells
andInterval:(float )interval

- getPeriodicDelay:(float *)delay	Gets repeat parameters for continuous ButtonCells
andInterval:(float *)interval

Tracking the Mouse

- (BOOL)trackMouse:(NXEvent *)theEvent	Plays the Sound, then tracks the mouse
inRect:(const NXRect *)cellFrame
ofView:controlView

Setting the Key Equivalent

- setKeyEquivalent:(unsigned short)charCode	Sets the ButtonCell's key equivalent

- setKeyEquivalentFont:fontObj	Sets the Font used to draw the key equivalent

- setKeyEquivalentFont:(const char *)fontName	Sets the Font and size used to draw the key equivalent
size:(float)fontSize

- (unsigned short)keyEquivalent	Returns the ButtonCell's key equivalent

Setting Parameters

- setParameter:(int)aParameter to:(int)value	Sets various flag values

- (int)getParameter:(int)aParameter	Returns various flag values

Modifying Graphic Attributes

- setBordered:(BOOL)flag	Sets whether the ButtonCell has a bezeled border

- (BOOL)isBordered	Returns whether the ButtonCell has a bezeled border

- setTransparent:(BOOL)flag	Sets whether the ButtonCell is transparent

- (BOOL)isTransparent	Returns whether the ButtonCell is transparent

- (BOOL)isOpaque	Returns whether receiver is opaque

Modifying Graphic Attributes

- setType:(int)aType	Sets the ButtonCell's display behavior

- setHighlightsBy:(int)aType	Sets how the ButtonCell highlights

- (int)highlightsBy	Returns how the ButtonCell highlights

- setShowsStateBy:(int)aType	Sets how the ButtonCell shows its alternate state

- (int)showsStateBy	Returns how ButtonCell shows its alternate state

Simulating a Click

- performClick:sender	Simulates clicking the ButtonCell

Displaying

- drawInside:(const NXRect *)aRect	Draws the inside of the ButtonCell
inView:controlView

- drawSelf:(const NXRect *)cellFrame	Draws the ButtonCell
inView:controlView

- highlight:(const NXRect *)cellFrame	Highlights the ButtonCell
inView:controlView
lit:(BOOL)flag

Archiving

- read:(NXTypedStream *)stream	Reads the ButtonCell from stream

- write:(NXTypedStream *)stream	Writes the ButtonCell to stream

Cell

Inherits From:	Object

Initializing, Copying, and Freeing a Cell

- init	Initializes a new Cell

- initIconCell:(const char *)iconName	Initializes a new Cell with the NXImage named iconName

- initTextCell:(const char *)aString	Initializes a new Cell with title aString

- copyFromZone:(NXZone *)zone	Returns a copy of the receiving Cell from zone

- free	Deallocates the Cell

Determining Component Sizes

- calcCellSize:(NXSize *)theSize	Returns the minimum size needed to display the Cell

- calcCellSize:(NXSize *)theSize	Returns the minimum size needed to display the Cell
inRect:(const NXRect *)aRect

- calcDrawInfo:(const NXRect *)aRect	Implemented by subclasses to recalculate drawing sizes

- getDrawRect:(NXRect *)theRect	Returns the rectangle the Cell draws in

- getIconRect:(NXRect *)theRect	Returns the rectangle that an icon is drawn in

- getTitleRect:(NXRect *)theRect	Returns the rectangle that a title is drawn in

Setting the Cell's Type

- setType:(int)aType	Sets the Cell's type to aType

- (int)type	Returns the Cell's type

Setting the Cell's State

- setState:(int)value	Sets the state of the Cell to value (0 or 1)

- incrementState	Increments the state of the Cell

- (int)state	Returns the state of the Cell (0 or 1)

Enabling and Disabling the Cell

- setEnabled:(BOOL)flag	Sets whether the Cell reacts to mouse events

- (BOOL)isEnabled	Returns whether the Cell reacts to mouse events

Setting the Icon

- setIcon:(const char *)iconName	Sets the Cell's icon to the NXImage named iconName

- (const char *)icon	Returns the name of the Cell's icon

Setting the Cell's Value

- setDoubleValue:(double)aDouble	Sets the Cell's value to aDouble

- (double)doubleValue	Returns the Cell's value as a double

- setFloatValue:(float)aFloat	Sets the Cell's value to aFloat

- (float)floatValue	Returns the Cell's value as a float

- setIntValue:(int)anInt	Sets the Cell's value to anInt

- (int)intValue	Returns the Cell's value as an int

- setStringValue:(const char *)aString	Sets the Cell's value to a copy of aString

- setStringValueNoCopy:(const char *)aString	Sets the Cell's value to aString

- setStringValueNoCopy:(char *)aString	Sets the Cell's value to aString; will free the string when
shouldFree:(BOOL)flag		freed if flag is YES

- (const char *)stringValue	Returns the Cell's value as a string

Interacting with Other Cells

- takeDoubleValueFrom:sender	Sets the Cell's value to sender's doubleValue

- takeFloatValueFrom:sender	Sets the Cell's value to sender's floatValue

- takeIntValueFrom:sender	Sets the Cell's value to sender's intValue

- takeStringValueFrom:sender	Sets the Cell's value to sender's stringValue

Modifying Text Attributes

- setAlignment:(int)mode	Sets the alignment of text in the Cell to mode

- (int)alignment	Returns the alignment of text in the Cell

- setFont:fontObject	Sets the Font used to display text in the Cell to fontObject

- font	Returns the Font used to display text in the Cell

- setEditable:(BOOL)flag	Sets whether the Cell's text is editable

- (BOOL)isEditable	Returns whether the Cell's text is editable

- setSelectable:(BOOL)flag	Sets whether the Cell's text is selectable

- (BOOL)isSelectable	Returns whether the Cell's text is selectable

- setScrollable:(BOOL)flag	Sets whether the Cell scrolls to follow typing

- (BOOL)isScrollable	Returns whether the Cell scrolls to follow typing

- setTextAttributes:textObject	Sets Text parameters for drawing or editing

- setWrap:(BOOL)flag	Sets whether the Cell's text is word-wrapped

Editing Text

- edit:(const NXRect *)aRect	Allows text editing in response to a mouse-down event
inView:aView
editor:textObject
delegate:anObject
event:(NXEvent *)theEvent

- endEditing:textObject	Ends any text editing occurring in the Cell

- select:(const NXRect *)aRect	Allows text selection in response to a mouse-down event
inView:aView
editor:textObject
delegate:anObject
start:(int)selStart
length:(int)selLength

Validating Input

- setEntryType:(int)aType	Sets the type of data the user can type into the Cell

- (int)entryType	Returns the type of data the user can type into the Cell

- (BOOL)isEntryAcceptable:(const char *)aString	Returns whether aString is acceptable for the entry type

Formatting Data

- setFloatingPointFormat:(BOOL)autoRange	Sets the display format for floating point values
left:(unsigned)leftDigits
right:(unsigned)rightDigits

Modifying Graphic Attributes

- setBezeled:(BOOL)flag	Sets whether the Cell has a bezeled border

- (BOOL)isBezeled	Returns whether the Cell has a bezeled border

- setBordered:(BOOL)flag	Sets whether the Cell has a plain border

- (BOOL)isBordered	Returns whether Cell has a plain border

- (BOOL)isOpaque	Returns whether the Cell is opaque

Setting Parameters

- setParameter:(int)aParameter to:(int)value	Sets various Cell flags

- (int)getParameter:(int)aParameter	Returns various Cell flag values

Displaying

- controlView	Implemented by subclasses to return the View last drawn in

- drawInside:(const NXRect *)cellFrame	Draws the area within the Cell's border in aView
inView:aView

- drawSelf:(const NXRect *)cellFrame	Draws the Cell in aView
inView:aView

- highlight:(const NXRect *)cellFrame	Highlights the Cell according to flag in aView
inView:aView
lit:(BOOL)flag

- (BOOL)isHighlighted	Returns whether the Cell is highlighted

Target and Action

- setAction:(SEL)aSelector	Implemented by subclasses to set the action method

- (SEL)action	Implemented by subclasses to return the action method

- setTarget:anObject	Implemented by subclasses to set the target object

- target	Implemented by subclasses to return the target object

- setContinuous:(BOOL)flag	Sets whether the Cell continuously sends action

- (BOOL)isContinuous	Returns whether the Cell continuously sends action

- (int)sendActionOn:(int)mask	Determines when the action is sent while tracking

Assigning a Tag

- setTag:(int)anInt	Implemented by subclasses to set an identifier tag

- (int)tag	Implemented by subclasses to return the identifier tag

Handling Keyboard Alternatives

- (unsigned short)keyEquivalent	Implemented by subclasses to return a key equivalent

Tracking the Mouse

+ (BOOL)prefersTrackingUntilMouseUp	Returns NO, so tracking stops when the mouse leaves the Cell; subclasses may override

- (int)mouseDownFlags	Returns the event flags set at the start of mouse tracking

- getPeriodicDelay:(float*)delay	Returns repeat values for continuous sending of the action
andInterval:(float*)interval

- (BOOL)trackMouse:(NXEvent *)theEvent	Controls tracking behavior of the Cell
inRect:(const NXRect *)cellFrame
ofView:aView

- (BOOL)startTrackingAt:(const NXPoint *)startPoint
inView:aView	Determines whether tracking should begin based on startPoint within aView

- (BOOL)continueTracking:(const NXPoint *)lastPoint
at:(const NXPoint *)currentPoint	Returns whether tracking should continue based on
inView:aView		lastPoint and currentPoint within aView

- stopTracking:(const NXPoint *)lastPoint	Allows the Cell to update itself to end tracking, based on
at:(const NXPoint *)stopPoint		lastPoint, stopPoint, within aView; flag is YES if the
inView:aView		this method was invoked because mouse went up
mouseIsUp:(BOOL)flag

Managing the Cursor

- resetCursorRect:(const NXRect *)cellFrame	Sets text Cells to show I-beam cursor
inView:aView

Archiving

- read:(NXTypedStream *)stream	Reads the Cell from stream

- write:(NXTypedStream *)stream	Writes the Cell to stream

- awake	Reinitializes the Cell after being read

ClipView

Inherits From:	View : Responder : Object

Initializing the Class

+ initialize	Initializes the ClipView class

Initializing and Freeing a ClipView

- initFrame:(const NXRect *)frameRect	Initializes a new ClipView instance

- free	Releases the ClipView's storage

Modifying the Frame Rectangle

- moveTo:(NXCoord)x :(NXCoord)y	Moves the origin of the frame rectangle

- rotateTo:(NXCoord)angle	Overridden to disable rotation

- sizeTo:(NXCoord)width :(NXCoord)height	Resizes the ClipView's frame

Modifying the Coordinate System

- rotate:(NXCoord)angle	Overriden to disable rotation

- scale:(NXCoord)x :(NXCoord)y	Rescales the coordinate system

- setDrawOrigin:(NXCoord)x :(NXCoord)y	Sets the origin of the coordinate system

- setDrawRotation:(NXCoord)angle	Disables rotation of the coordinate system

- setDrawSize:(NXCoord)width :(NXCoord)height	Scales the coordinate system

- translate:(NXCoord)x :(NXCoord)y	Shifts the coordinate system

Managing Component Views

- docView	Returns the ClipView's document view

- setDocView:aView	Makes aView the ClipView's document view

- getDocRect:(NXRect *)aRect	Returns the document rectangle

- getDocVisibleRect:(NXRect *)aRect	Gets the visible portion of the document view

- resetCursorRects	Resets the cursor rectangle for the document view

- setDocCursor:anObj	Sets the cursor for the document view

Modifying Graphic Attributes and Displaying

- (float)backgroundGray	Returns the ClipView's background gray

- setBackgroundGray:(float)value	Sets the ClipView's background gray

- (NXColor)backgroundColor	Returns the ClipView's background color

- setBackgroundColor:(NXColor)color	Sets the ClipView's background color

- drawSelf:(const NXRect *)rects :(int )rectCount	Fills the background gray where needed

Scrolling

- autoscroll:(NXEvent *)theEvent	Scrolls in response to mouse-dragged events

- constrainScroll:(NXPoint *)newOrigin	Prevents scrolling to an undesirable position

- rawScroll:(const NXPoint *)newOrigin	Lowest-level unconstrained scrolling routine

- setCopyOnScroll:(BOOL)flag	Sets how the visible areas are redrawn

- setDisplayOnScroll:(BOOL)flag	Sets how the document view is displayed during scrolling

Coordinating with Other Views

- descendantFlipped:sender	Notification that the document's orientation has changed

- descendantFrameChanged:sender	Notification that the document's frame has changed

Archiving

- awake	Initializes the ClipView after unarchiving

- read:(NXTypedStream *)stream	Reads the ClipView from the typed stream

- write:(NXTypedStream *)stream	Writes the ClipView to the typed stream

Implemented by ClipView's Superview

- reflectScroll:aClipView	Notifies the superview to update indicators

- scrollClip:aClipView to:(const NXPoint *)aPoint
	Notifies the superview of a scroll

Control

Inherits From:	View : Responder : Object

Initializing and Freeing a Control

- initFrame:(const NXRect *)frameRect	Initializes a new Control

- free	Deallocates the Control

Setting the Control's Cell

+ setCellClass:classId	Implemented by subclasses to set the Cell class used

- setCell:aCell	Sets the Control's Cell to aCell

- cell	Returns the Control's Cell

Enabling and Disabling the Control

- setEnabled:(BOOL)flag	Sets whether the Control reacts to mouse events

- (BOOL)isEnabled	Returns whether the Control reacts to mouse events

Identifying the Selected Cell

- selectedCell	Returns the Control's selected Cell

- (int)selectedTag	Returns the tag of the Control's selected Cell

Setting the Control's Value

- setDoubleValue:(double)aDouble	Sets the Control's  value to aDouble

- (double)doubleValue	Returns the Control's value as a double

- setFloatValue:(float)aFloat	Sets the Control's  value to aFloate

- (float)floatValue	Returns the Control's value as a float

- setIntValue:(int)anInt	Sets the Control's  value to anInt

- (int)intValue	Returns the Control's value as an int

- setStringValue:(const char *)aString	Sets the Control's  value to aString

- setStringValueNoCopy:(const char *)aString	Sets the Control's  value to aString

- setStringValueNoCopy:(char *)aString	Sets the Control's  value to aString
shouldFree:(BOOL)flag

- (const char *)stringValue	Returns the Control's value as a string

Interacting with Other Controls

- takeDoubleValueFrom:sender	Sets the Control's value to sender's doubleValue

- takeFloatValueFrom:sender	Sets the Control's value to sender's floatValue

- takeIntValueFrom:sender	Sets the Control's value to sender's intValue

- takeStringValueFrom:sender	Sets the Control's value to sender's stringValue

Formatting Text

- setAlignment:(int)mode	Sets the alignment of text in the Control to mode

- (int)alignment	Returns the alignment of text in the Control

- setFont:fontObject	Sets the Font used to draw text in the Control to fontObject

- font	Returns the Font used to draw text in the Control

- setFloatingPointFormat:(BOOL)autoRange	Sets the display format for floating point values
left:(unsigned)leftDigits
right:(unsigned)rightDigits

Managing the Field Editor

- abortEditing	Aborts editing of text displayed by the Control

- currentEditor	Returns the object used to edit text in the Control

- validateEditing	Validates the user's changes to editable text

Managing the Cursor

- resetCursorRects	Sets text-bearing Controls to show an I-beam cursor

Resizing the Control

- calcSize	Recalculates internal size information

- sizeTo:(NXCoord)width :(NXCoord)height	Resizes the Control to width and height

- sizeToFit	Resizes the Control to fit its Cell

Displaying the Control and Cell

- drawCell:aCell	Redraws aCell if it's the Control's Cell

- drawCellInside:aCell	Redraws aCell's inside if it's the Control's Cell

- drawSelf:(const NXRect *)rects :(int)rectCount	Draws the Control

- selectCell:aCell	Selects aCell if it's the Control's cell

- update	Redisplays the Control or marks it for later redisplay

- updateCell:aCell	Redisplays aCell or marks it for redisplay

- updateCellInside:aCell	Redisplays the inside of aCell or marks it for redisplay

Target and Action

- setAction:(SEL)aSelector	Sets the Control's action method to aSelector

- (SEL)action	Returns the Control's action method

- setTarget:anObject	Sets the Control's target object to anObject

- target	Returns the Control's target object

- setContinuous:(BOOL)flag	Sets whether the Control continuously sends its action

- (BOOL)isContinuous	Returns whether the Control continuously sends its action

- sendAction:(SEL)theAction to:theTarget	Has the Application object send theAction to theTarget

- (int)sendActionOn:(int)mask	Determines when the action is sent while tracking

Assigning a Tag

- setTag:(int)anInt	Sets the Control's tag to anInt

- (int)tag	Returns the Control's tag

Tracking the Mouse

- ignoreMultiClick:(BOOL)flag	Sets whether multiple clicks are ignored

- mouseDown:(NXEvent *)theEvent	Handles a mouse-down event in the Control

- (int)mouseDownFlags	Returns flags in effect at beginning of tracking

Archiving

- read:(NXTypedStream *)stream	Reads the Control from stream

- write:(NXTypedStream *)stream	Writes the Control to stream

Font

Inherits From:	Object

Initializing the Class Object

+ initialize	Performed automatically at start-up

+ useFont:(const char *)fontName	Registers that fontName is used in the document

Creating and Freeing a Font Object

+ newFont:(const char *)fontName	Returns the specified Font object
size:(float)fontSize

+ newFont:(const char *)fontName	Returns the specified Font object
size:(float)fontSize
matrix:(const float *)fontMatrix

+ newFont:(const char *)fontName	Returns the specified Font object
size:(float)fontSize
style:(int)fontStyle
matrix:(const float *)fontMatrix

+ boldSystemFontOfSize:(float)fontSize	Returns the Font object representing the bold system 
matrix:(const float *)fontMatrix		font of size fontSize and matrix fontMatrix

+ userFixedPitchFontOfSize:(float)fontSize	Returns the Font object representing the application's 
matrix:(const float *)fontMatrix		fixed-pitch font of size fontSize and matrix fontMatrix

+ userFontOfSize:(float)fontSize	Returns the Font object representing the application's 
matrix:(const float *)fontMatrix		standard font of size fontSize and matrix fontMatrix

+ systemFontOfSize:(float)fontSize	Returns the Font object representing the system 
matrix:(const float *)fontMatrix		font of size fontSize and matrix fontMatrix

- free	Has no effect

Querying the Font Object

- (const float *)displayName	Returns the full name of the font

- (const float *)familyName	Returns the name of the font's family

- (const char *)name	Returns the name of the font

- (int)fontNum	Returns the Window Server's font number

- (float)getWidthOf:(const char *)string	Returns the width of string in this font

- (BOOL)hasMatrix	Returns whether font differs from identity matrix

- (const float *)matrix	Returns a pointer to the font matrix

- (NXFontMetrics *)metrics	Returns pointer to a record of font information

- (float)pointSize	Returns the size of the font in points

- (NXFontMetrics *)readMetrics:(int)flags	Reads flags information into the font record

- screenFont	Returns the screen font for this font

- (int)style	Returns the font style

Setting the Font

- set	Makes this font the graphic state's current font

- setStyle:(int)aStyle	Sets the Font's style

+ setUserFixedPitchFont:(Font *)aFont	Sets the fixed-pitch font used by default in the application

+ setUserFont:(Font *)aFont	Sets the standard font used by default in the application

Archiving

- awake	Reinitializes the Font object

- finishUnarchiving	Checks whether the Font object already exists

- read:(NXTypedStream *)stream	Reads the Font object from the typed stream

- write:(NXTypedStream *)stream	Writes the Font object to the typed stream

FontManager

Inherits From:	Object

Creating a FontManager

+ new	Returns the application-wide FontManager

Converting Fonts

- convertFont:fontObj	Converts the font in response to changeFont:

- convertWeight:(BOOL)upFlag of:fontObj	Raises or lowers the weight of the font 

- convert:fontObj toFace:(const char *)typeface	Converts the font to the specified typeface

- convert:fontObj toFamily:(const char *)family	Converts the font to the specified family

- convert:fontObj toSize:(float)size	Converts the font to the specified point size

- convert:fontObj	Converts the font to have the specified trait
toHaveTrait:(NXFontTraitMask)trait

- convert:fontObj	Converts the font to remove the specified trait
toNotHaveTrait:(NXFontTraitMask)trait

- findFont:(const char *)family	Tries to find a font that matches the specified characteristics
traits:(NXFontTraitMask)traits
weight:(int)weight
size:(float)size

- getFamily:(const char **)family	Provides the characteristics of the given fontObj
traits:(NXFontTraitMask *)traits
weight:(int *)weight
size:(float *)size
ofFont:fontObj

Setting Parameters

- setAction:(SEL)aSelector	Sets the action sent by the FontManager

+ setFontPanelFactory:classId	Sets the class used to create the Font panel

+ setFontManagerFactory:classId	Sets the class used to create the font manager

- setSelFont:fontObj isMultiple:(BOOL)flag	Notifies FontManager of selection's current font

- setEnabled:(BOOL)flag	Enables and disables the Font panel and menu

Querying Parameters

- (SEL)action	Gets the action sent by the FontManager

- (char **)availableFonts	Provides a list of all available fonts

- getFontMenu:(BOOL)create	Returns the Font menu

- getFontPanel:(BOOL)create	Returns the Font panel

- (BOOL)isMultiple	Returns whether selection contains multiple fonts

- selFont	Returns the first font in the current selection

- (BOOL)isEnabled	Returns whether the Font panel and menu are enabled

Target and Action Methods

- modifyFont:sender	Converts current selection's font

- addFontTrait:sender	Causes trait to be added to font in current selection

- removeFontTrait:sender	Causes trait to be removed from font in current selection

- modifyFontViaPanel:sender	Converts font according to Font panel settings

- orderFrontFontPanel:sender	Orders the FontPanel front

- sendAction	Dispatches action message up responder chain

Assigning a Delegate

- setDelegate:anObject	Sets the FontManager's delegate

- delegate:	Returns the FontManager's delegate

Archiving the FontManager

- finishUnarchiving	Finishes unarchiving by creating the FontManager

FontPanel

Inherits From:	Panel : Window : Responder : Object

Creating a FontPanel

+ new	Returns a FontPanel object

+ newContent:(const NXRect *)contentRect	Returns a FontPanel object
style:(int)aStyle
backing:(int)bufferingType
buttonMask:(int)mask
defer:(BOOL)flag

Setting the Font

- setPanelFont:fontObj isMultiple:(BOOL)flag	Sets the Font panel's current font

- panelConvertFont:fontObj	Converts fontObj to the user's choice from the panel

Configuring the FontPanel

- accessoryView	Returns the application-customized view

- setAccessoryView:aView	Adds application-customized View to the FontPanel

- setEnabled:(BOOL)flag	Enables and disables the FontPanel's Set button

- (BOOL)isEnabled	Returns whether the FontPanel's Set button is enabled

- (BOOL)worksWhenModal	Returns whether FontPanel works when another window is modal

Editing the FontPanel's Fields

- textDidEnd:textObject	Detects completion of size field editing
endChar:(unsigned short)endChar

- textDidGetKeys:textObject isEmpty:(BOOL)flag
	Detects empty size field

Displaying the FontPanel

- orderWindow:(int)place relativeTo:(int)otherWin
	Repositions panel and updates it if necessary

Resizing the FontPanel

- windowWillResize:sender	Constrains FontPanel resizing
toSize:(NXSize *)frameSize

Form

Inherits From:	Matrix : Control : View : Responder : Object

Setting Form's Cell Class

+ setCellClass:classId	Sets the subclass of Cell used by Form

Initializing a Form

- initFrame:(const NXRect *)frameRect	Initializes a new Form in frameRect

Laying Out the Form

- addEntry:(const char *)title	Adds a new entry with title as its title at the end of the Form

- addEntry:(const char *)title	Adds a new entry with title as its title at the end of the Form
tag:(int)anInt		and sets its tag, target, and action
target:anObject
action:(SEL)aSelector

- insertEntry:(const char *)title at:(int)index	Inserts a new entry with title as its title at index

- insertEntry:(const char *)title	Inserts a new entry with title as its title at index and sets
at:(int)index		its tag, target, and action
tag:(int)anInt
target:anObject
action:(SEL)aSelector

- removeEntryAt:(int)index	Removes the entry at index

- setInterline:(NXCoord)spacing	Sets the spacing between entries

Assigning a Tag

- setTag:(int)anInt at:(int)index	Sets the tag of the entry at index to anInt

Finding Indices

- (int)findIndexWithTag:(int)aTag	Returns the index for the entry with tag aTag

- (int)selectedIndex	Returns the index of the currently selected entry

Modifying Graphic Attributes

- setBezeled:(BOOL)flag	Sets whether entries have a bezeled border

- setBordered:(BOOL)flag	Sets whether the entries have a plain border

- setFont:fontObject	Sets the Font used to draw both titles and text

- setTitleFont:fontObject	Sets the Font used to draw entry titles

- setTextFont:fontObject	Sets the Font used to draw entry text

- setTitleAlignment:(int)mode	Sets how titles are aligned

- setTextAlignment:(int)mode	Sets how text is aligned within the entries

Setting Item Titles

- setTitle:(const char *)aString at:(int)index	Sets the title of the entry at index to aString

- (const char *)titleAt:(int)index	Returns the title of the entry at index

Setting Item Values

- setDoubleValue:(double)aDouble at:(int)index	Sets the value of the entry at index to aDouble

- (double)doubleValueAt:(int)index	Returns the value of the entry at index as a double

- setFloatValue:(float)aFloat at:(int)index	Sets the value of the entry at index to aFloat

- (float)floatValueAt:(int)index	Returns the value of the entry at index as a float

- setIntValue:(int)anInt at:(int)index	Sets the value of the entry at index to anInt

- (int)intValueAt:(int)index	Returns the value of the entry at index as an int

- setStringValue:(const char *)aString at:(int)index
	Sets the value of the entry at index to a aString

- (const char *)stringValueAt:(int)index	Returns the value of the entry at index as a string

Editing Text

- selectTextAt:(int)index	Selects the text in the entry at index

Resizing the Form

- calcSize	Recalculates title positions in the Form

- setEntryWidth:(NXCoord)width	Sets the width of all the entries

- sizeTo:(NXCoord)width :(NXCoord)height	Resizes the Form and updates the widths of its entries

- sizeToFit	Modifies the Form's frame to fit its entries

Displaying

- drawCellAt:(int)index	Displays the Cell at the specified index

Target and Action

- setAction:(SEL)aSelector at:(int)index	Sets the action method of the entry at index to aSelector

- setTarget:anObject at:(int)index	Sets the target object of the entry at index to anObject

FormCell

Inherits From:	ActionCell : Cell : Object

Initializing, Copying, and Freeing a FormCell

- init	Initializes a new FormCell with ªFieldº as its title

- initTextCell:(const char *)aString	Initializes a new FormCell with aString as its title

- copyFromZone:(NXZone *)zone	Returns a copy of the FormCell allocated from zone

- free	Deallocates the FormCell

Determining a FormCell's Size

- calcCellSize:(NXSize *)theSize	Calculates the FormCell's size within aRect
inRect:(const NXRect *)aRect

Enabling the FormCell

- setEnabled:(BOOL)flag	Sets whether the FormCell reacts to events

Modifying the Title

- setTitle:(const char *)aString	Sets the FormCell's title to aString

- (const char *)title	Returns the FormCell's title

- setTitleFont:fontObject	Sets the Font used to draw the title

- titleFont	Returns the Font used to draw the title

- setTitleAlignment:(int)mode	Sets the alignment of the title

- (int)titleAlignment	Returns the alignment of the title

- setTitleWidth:(NXCoord)width	Sets the width of the FormCell's title field to width

- (NXCoord)titleWidth:(const NXSize *)aSize	Returns the width of the title, constrained to aSize

- (NXCoord)titleWidth	Returns the width of the title 

Modifying Graphic Attributes

- (BOOL)isOpaque	Returns whether the FormCell is opaque

Displaying

- drawInside:(const NXRect *)cellFrame	Draws the editable text portion of the cell
inView:controlView

- drawSelf:(const NXRect *)cellFrame	Draws the entire FormCell
inView:controlView

Managing Cursor Rectangles

- resetCursorRect:(const NXRect *)cellFrame	Resets the cursor rectangle so that the cursor becomes an
inView:controlView		I-beam when over the editable portion of the FormCell

Tracking the Mouse

- (BOOL)trackMouse:(NXEvent*)event	Overrides Cell's method to allow editing
inRect:(const NXRect*)aRect
ofView:controlView

Archiving

- read:(NXTypedStream *)stream	Reads the FormCell from stream

- write:(NXTypedStream *)stream	Writes the FormCell to stream

Listener

Inherits From:	Object

Initializing the Class

+ initialize	Sets up a table of understood messages

Initializing a New Listener Instance

- init	Initializes the Listener after it's allocated

Freeing a Listener

- free	Deallocates the Listener and its ports

Setting Up a Listener

- addPort	Sets procedure to receive messages at port

- removePort	Removes procedure that receives messages

- (int)checkInAs:(const char *)name	Allocates a port and registers it as name

- (int)usePrivatePort	Allocates a port but doesn't register it

- (int)checkOut	Unregisters the port, making it private

- (port_t)listenPort	Returns the Listener's port

- (port_t)signaturePort	Returns the port used to validate the Listener

- (const char *)portName	Returns registered name of the Listener's port

- setPriority:(int)level	Sets the priority for receiving messages to level

- (int)priority	Returns priority level for receiving messages

- setTimeout:(int)ms	Sets how long to wait on sending reply

- (int)timeout	Returns how long to wait on sending reply

+ run	Enables Listener in absence of an Application object

Providing for Program Control

- (int)msgCalc:(int *)flag	Receives message to update the current window

- (int)msgCopyAsType:(const char *)aType	Receives message to copy the selection
ok:(int *)flag

- (int)msgCutAsType:(const char *)aType	Receives message to cut selection as aType data
ok:(int *)flag

- (int)msgDirectory:(char *const *)fullPath	Receives message asking for the current directory
ok:(int *)flag

- (int)msgFile:(char *const *)fullPath	Receives message asking for the current document
ok:(int *)flag

- (int)msgPaste:(int *)flag	Receives message to paste data from pasteboard

- (int)msgPosition:(char *const *)aString	Receives message requesting selection information
posType:(int *)anInt
ok:(int *)flag

- (int)msgPrint:(const char *)fullPath	Receives message to print the fullPath file
ok:(int *)flag

- (int)msgQuit:(int *)flag	Receives a remote message to quit

- (int)msgSelection:(char *const *)bytes	Receives message requesting the current selection
length:(int *)numBytes
asType:(const char *)aType
ok:(int *)flag

- (int)msgSetPosition:(const char *)aString	Receives message to scroll so aString is visible
posType:(int)anInt
andSelect:(int)selectFlag
ok:(int *)flag

- (int)msgVersion:(char *const *)aString	Receives message requesting version information
ok:(int *)flag

Receiving Remote Messages

- messageReceived:(NXMessage *)msg	Receives messages at the Listener's port

- (int)performRemoteMethod:(NXRemoteMethod *)method
paramList:(NXParamValue *)params	Performs Listener's remote method

- (NXRemoteMethod *)remoteMethodFor:(SEL)aSelector
	Looks up remote method for aSelector

Assigning a Delegate

- setDelegate:anObject	Makes anObject the Listener's delegate

- delegate	Returns the Listener's delegate

- setServicesDelegate:anObject	Makes anObject the receiver of service requests

- servicesDelegate	Returns the object that receives service requests

Archiving

- read:(NXTypedStream *)stream	Reads the Listener from stream

- write:(NXTypedStream *)stream	Writes the Listener to stream

Matrix

Inherits From:	Control : View : Responder : Object

Initializing the Matrix Class

+ initialize	Initializes the Matrix class

+ setCellClass:classId	Sets the default class used to make Cells

Initializing and Freeing a Matrix

- initFrame:(const NXRect *)frameRect	Initializes a new Matrix object in frameRect

- initFrame:(const NXRect *)frameRect	Initializes a new Matrix object in frameRect,
mode:(int)aMode		with aMode as the selection mode,
cellClass:classId		classId as the class used to make new Cells,
numRows:(int)numRows		and having numRows rows
numCols:(int)numCols		and numCols columns

- initFrame:(const NXRect *)frameRect	Initializes a new Matrix object with the given values
mode:(int)aMode		with aMode as the selection mode,
prototype:aCell		aCell as the prototype copied to make new Cells,
numRows:(int)numRows		and having numRows rows
numCols:(int)numCols		and numCols columns

- free	Deallocates the Matrix and all its Cells

Setting the Selection Mode

- setMode:(int)aMode	Sets the selection mode of the Matrix

- (int)mode	Returns the selection mode of the Matrix

Configuring the Matrix

- setEnabled:(BOOL)flag	Sets whether the Matrix reacts to events

- setEmptySelectionEnabled:(BOOL)flag	Sets whether there may be no Cells selected

- (BOOL)isEmptySelectionEnabled	Returns whether there may be no Cells selected

- setSelectionByRect:(BOOL)flag	Sets whether a user can drag a rectangular selection
		(the default is YES)

- (BOOL)isSelectionByRect	Returns whether a user can drag a rectangular selection

Setting the Cell class

- setCellClass:classId	Sets the subclass of Cell used to make new Cells

- setPrototype:aCell	Sets the prototype Cell copied to make new Cells

- prototype	Returns the prototype Cell copied to make new Cells

Laying Out the Matrix

- addCol	Adds a new column of Cells to the bottom of the Matrix

- addRow	Adds a new row of Cells to the right of the Matrix

- insertColAt:(int)col	Inserts a new column of Cells at col, creating as many as needed to make the Matrix col columns wide

- insertRowAt:(int)row	Inserts a new row of Cells at row, creating as many as needed to make the Matrix row rows wide

- removeColAt:(int)col andFree:(BOOL)flag	Removes the column at col, freeing the Cells if flag is YES

- removeRowAt:(int)row andFree:(BOOL)flag	Removes the row at row, freeing the Cells if flag is YES

- makeCellAt:(int)row :(int)col	Creates a new Cell at row, col in the Matrix and returns it

- putCell:newCell at:(int)row :(int)col	Replaces Cell at row and col with newCell; returns old Cell

- renewRows:(int)newRows cols:(int)newCols	Changes the number of rows and columns in Matrix without freeing any Cells

- setCellSize:(const NXSize *)aSize	Sets the width and height of all Cells in the Matrix

- getCellSize:(NXSize *)theSize	Gets the width and height of Cells in the Matrix

- getCellFrame:(NXRect *)theRect	Returns the frame of the Cell at row and col
at:(int)row
:(int)col

- setIntercell:(const NXSize *)aSize	Sets the vertical and horizontal spacing between Cells

- getIntercell:(NXSize *)theSize	Gets the vertical and horizontal spacing between Cells

- (int)cellCount	Returns the number of Cells in the Matrix

- getNumRows:(int *)rowCount	Gets the number of rows and columns in the Matrix
numCols:(int *)colCount

Finding Matrix Coordinates

- getRow:(int *)row	Gets the row and col position of aCell
andCol:(int *)col
ofCell:aCell

- getRow:(int *)row	Gets the row and col position corresponding to aPoint, and
andCol:(int *)col		returns the Cell at that point
forPoint:(const NXPoint *)aPoint

Modifying Individual Cells

- setIcon:(const char *)iconName	Sets the icon for the Cell at row and col to the NXImage
at:(int)row		named iconName
:(int)col

- setState:(int)value at:(int)row :(int)col	Sets the state of the Cell at row and col to value

- setTitle:(const char *)aString at:(int)row :(int)col
	Assigns Cell at row and col the title aString

- setTag:(int)anInt at:(int)row :(int)col	Assigns the Cell at row and col the tag anInt

- setTag:(int)anInt	Assigns a tag, target, and action to the specified Cell
target:anObject
action:(SEL)aSelector
at:(int)row
:(int)col

Selecting Cells

- selectCell:aCell	Selects the Cell aCell if it is in the Matrix

- selectCellAt:(int)row :(int)col	Selects the Cell at row and col

- selectCellWithTag:(int)anInt	Selects the Cell with the tag anInt

- setSelectionFrom:(int)startPos	Selects the Cells in the Matrix from startPos to endPos,
to:(int)endPos		counting in row order from the upper left, as though
anchor:(int)anchorPos		anchorPos were the number of the last Cell selected,
lit:(BOOL)flag		and highlighting the Cells according to flag

- selectAll:sender	Selects all the Cells in the Matrix

- selectedCell	Returns the last (lowest and rightmost) selected Cell

- getSelectedCells:(List *)aList	Puts the selected Cells into aList and returns the List

- (int)selectedCol	Returns the column of the selected Cell

- (int)selectedRow	Returns the row of the selected Cell

- clearSelectedCell	Deselects the selected Cell

Finding Cells

- findCellWithTag:(int)anInt	Returns the Cell with anInt as its tag

- cellAt:(int)row :(int)col	Returns the Cell at row row and column col

- cellList	Returns the Matrix's List of Cells

Modifying Graphic Attributes

- setBackgroundColor:(NXColor)aColor	Sets the color of the background between Cells to aColor

- (NXColor)backgroundColor	Returns the color of the background between Cells 

- setBackgroundGray:(float)value	Sets the gray of the background between Cells to value

- (float)backgroundGray	Returns the gray of the background between Cells

- setCellBackgroundColor:(NXColor)aColor	Sets the color of the background within Cells to aColor

- (NXColor)cellBackgroundColor	Returns the color of the background within Cells

- setCellBackgroundGray:(float)value	Sets the gray of the background within Cells to value

- (float)cellBackgroundGray	Returns the gray of the background within Cells

- setBackgroundTransparent:(BOOL)flag	Sets whether the background between Cells is transparent